#ifndef MAP_H
#define MAP_H

#include <iostream> 
#include <vector>
#include "global_variables.h"
#include <allegro5\allegro.h>
#include "bitmaps.h"
#include "movables.h"


using namespace std;

class Map
{

public:

	Movable_type element(int x_loc, int y_loc);
	void set_type(Movable_type, int x_loc, int y_loc); 
	void generate_default_map();
	static ALLEGRO_BITMAP *bitmap(); 
	void setBitmap();
	//static ALLEGRO_BITMAP *bmap; 
	void plot_movable_on_map(Movables& const movable);
	void remove_movable_from_map(Movables& const movable);

private:
	vector<vector<Movable_type> > _screen_map;
	vector<vector<bool> > _overlap_map;
	void draw_holes(int x_s, int y_s, int x_e, int y_e);
	void draw_sand();
};


#endif
